using B.Z.Inventory.API.Read.DTO;
using B.Z.Inventory.ErrorCode;
using MediatR;

namespace B.Z.Inventory.API.Read.Application.Command
{
    /// <summary>
    /// 货品查询命令
    /// </summary>
    public class GoodsQueryCommand : IRequest<APIResult<APIPaging<GoodsDto>>>
    {
        public int? Id { get; set; }
        /// <summary>
        /// 货品名称（可选筛选条件）
        /// </summary>
        public string? GoodsName { get; set; }
        
        /// <summary>
        /// 货品编号（可选筛选条件）
        /// </summary>
        public string? GoodsNumber { get; set; }
        
        /// <summary>
        /// 规格（可选筛选条件）
        /// </summary>
        public string? GoodsModel { get; set; }
        
        /// <summary>
        /// 搜索关键词（模糊查询货品名称、编号、规格）
        /// </summary>
        public string? SearchKeyword { get; set; }
        
        /// <summary>
        /// 页码
        /// </summary>
        public int PageIndex { get; set; } = 1;
        
        /// <summary>
        /// 页大小
        /// </summary>
        public int PageSize { get; set; } = 10;
    }
}